1. Field of the Invention
The present invention relates to the field of computer applications communications. In particular, the present invention describes a method and apparatus for communicating information received in a first application to other applications interested in that information.
2. Description of Related Art
Computers execute many programs (applications) at the same time. Often cooperating applications need to share data corresponding to their respective interfaces. That is, they associate certain parts of their respective graphical user interfaces (GUIs). For example, one application may present a photo-realistic view of a network hub. A second application may present a logical view of network workgroups. If a user selects a network workgroup, it is desirable to show all the ports on the hub corresponding to that network workgroup. This presents the problem of how should the information, that the user has interacted with in the second application, be sent to the first application.
Typically prior art systems required that all sender applications had to be programmed to know the list of all receiver applications. (Sender applications send data to receiver applications when a user interacts with the sender applications. Any given application can be both a sender and a receiver.) Thus, every sender application needed to know: every possible receiver application; differences between the types of information that various receivers will accept; differences between the types of information that various versions of any given receiver will accept.
Many problems exist with such solutions. Each time a new receiver application is released, all the sender applications must be updated. Clearly, this causes administrative difficulties for software manufacturers and users. Thus, manufacturers and users need an easily extendible system for communicating information between applications. Every sender application must include all the receivers' additional information. This makes writing the applications more complex. Also, each sender maintains its own version of the information, causing a duplication of information. Thus, a simpler solution to sharing information is needed.
A technique for sharing information between applications is needed.